C#でSQL Serverのレコードを削除する方法
サンプルコード
using System;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// SQL Server接続文字列
string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;";
// 削除するクエリ
string query = "DELETE FROM YourTableName WHERE ID = @ID";
// 削除対象のID
int idToDelete = 1;
using (SqlConnection connection = new SqlConnection(connectionString))
{
try
{
connection.Open(); // 接続を開く
using (SqlCommand command = new SqlCommand(query, connection))
{
// パラメータの追加
command.Parameters.AddWithValue("@ID", idToDelete);
// クエリを実行
int rowsAffected = command.ExecuteNonQuery();
Console.WriteLine($"{rowsAffected} 行が削除されました。");
}
}
catch (Exception ex)
{
Console.WriteLine($"エラーが発生しました: {ex.Message}");
}
}
}
}
追加説明
-
パラメータ化されたクエリ:
ID値をパラメータ化することで、SQLインジェクションを防止します。
-
エラーハンドリング:
try-catch構文で接続やクエリ実行時のエラーを処理します。
-
影響行数の確認:
ExecuteNonQuery()の戻り値を使用して、削除された行数を確認できます。